package com.zp.self.module.level_4_算法练习.数据结构.链表;

/**
 * @author  ZengPeng
 * @date  2021/2/5
 **/
class 力扣_83_删除排序链表中的重复元素 {
    public static void main(String[] args) {
        ListNode n1 = new ListNode(1);
        ListNode n2 = new ListNode(1);
        ListNode n3 = new ListNode(2);
        n1.next=n2;
        n2.next=n3;

        ListNode listNode = new 力扣_83_删除排序链表中的重复元素().deleteDuplicates(n1);
        while (listNode!=null){
            System.out.print(listNode.val+",");
            listNode = listNode.next;
        }
    }
    /**
     题目：给定一个已排序的链表的头 head ，
     删除所有重复的元素，使每个元素只出现一次 。返回 已排序的链表 。

     分析：
     1.判断当前元素的值 与下一个元素值是否相同,相同指向下一个元素

     边界值 & 注意点：
     1.
     **/
    public ListNode deleteDuplicates(ListNode head) {
        // 判断：当前值与下一个值是否相同？
        ListNode headTop = head;
        while (head!=null && head.next!=null){
            if(head.val ==head.next.val)head.next = head.next.next;
            else head = head.next;
        }
        return headTop;
    }
}


